﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Drawing;

public partial class Account_AutoUp : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

        lblTTUpCK.Text = "";
        lblTTUpKhoCK.Text = "";

        if( Request.QueryString["id"] == null)
        {
            anPnlNoiDung();
        }
        else
        {
            int id = int.Parse(Request.QueryString["id"].ToString());

            LinQ_RaoVatDataContext linQ = new LinQ_RaoVatDataContext();
            TIN_RAO_VAT tin = linQ.TIN_RAO_VATs.Single(t => t.MaTinRaoVat == id);

            if (tin == null)
            {
                anPnlNoiDung();
            }
            else
            {
                string sTenDangNhap = (string)Session["TenDangNhap"] ;
                if (sTenDangNhap == null)
                {
                    anPnlNoiDung();
                }
                else
                {
                    if( tin.NGUOI_DUNG.TenDangNhap.Trim() == sTenDangNhap.Trim())
                    {
                        hienPnlNoiDung();
                        hpTenTinRaoVat.Text = tin.TenTinRaoVat;
                        hpTenTinRaoVat.NavigateUrl = @"~/RaoVat/ChiTietTinRaoVat.aspx?=id" + tin.MaTinRaoVat;

                    }
                    else{
                        anPnlNoiDung();
                    }
                }
            }
        }
    }

    private void hienPnlNoiDung()
    {
        pnlNoiDung.Visible = true;
        pnlLoi.Visible = false;
    }
    private void anPnlNoiDung()
    {
        pnlNoiDung.Visible = false;
        pnlLoi.Visible = true;
    }
    protected void btnHienAutoUpKhongChuKi_Click(object sender, EventArgs e)
    {
        pnlNoiDungAutoUpKhongChuKi.Visible = true;
        pnlButtonAutoUpKhongChuKi.Visible = false;        
    }
    protected void btnAnAutoUpKhongChuKi_Click(object sender, EventArgs e)
    {
        pnlNoiDungAutoUpKhongChuKi.Visible = false;
        pnlButtonAutoUpKhongChuKi.Visible = true;
    }
    protected void  btnHienAutoUpTheoChuKi_Click(object sender, EventArgs e)
    {
         pnlNoiDungAutoUpTheoChuKi.Visible = true;
            pnlButtonAutoUpTheoChuKi.Visible = false;
    }
    protected void  btnAnAutoUpTheoChuKi_Click(object sender, EventArgs e)
    {
       pnlNoiDungAutoUpTheoChuKi.Visible = false;
            pnlButtonAutoUpTheoChuKi.Visible = true;
    }
    protected void btnUpBaiKhongChuKi_Click(object sender, EventArgs e)
    {
        int Ngay = 0, Thang = 0, Nam = 0;
        if(txtNgayBatDauKhongChuKi.Text == "")
        {
            lblTTUpKhoCK.ForeColor = Color.Red;
            lblTTUpKhoCK.Text = "Bạn vui lòng nhập đầy đủ thông tin.";            
        }
        else
        {
            DateTime thoiGianUp = DateTime.Parse(txtNgayBatDauKhongChuKi.Text);
            Ngay = thoiGianUp.Day;
            Thang = thoiGianUp.Month;
            Nam = thoiGianUp.Year;
        }
        string sTenDangNhap = Session["TenDangNhap"].ToString();
        LinQ_RaoVatDataContext db = new LinQ_RaoVatDataContext();
        NGUOI_DUNG nguoiDung = db.NGUOI_DUNGs.Single(p => p.TenDangNhap == sTenDangNhap);
        if(nguoiDung.DiemVIP < 5)
        {
            lblTTUpKhoCK.ForeColor = Color.Red;
            lblTTUpKhoCK.Text = "Bạn không đủ tiển để đăng ký up bài tự động.";
        }
        else
        {
            AUTO_UP autoUp = new AUTO_UP();
            DateTime thoiGianUp = new DateTime(Nam, Thang, Ngay, int.Parse(ddlGioBatDauUpKhongChuKy.Text), 0, 0);            
            autoUp.MaTinRaoVat = int.Parse(Request.QueryString["id"]);
            autoUp.DaUp = false;
            autoUp.ThoiGianUp = thoiGianUp;

             TimeSpan span = DateTime.Now.Subtract(thoiGianUp);

             if (span.TotalMilliseconds > 0)
             {
                 lblTTUpKhoCK.ForeColor = Color.Blue;
                 lblTTUpKhoCK.Text = "Bạn phải đăng ký thời gian up nhỏ hơn giờ hiện tại!!.";
                 
             }
             else
             {
                 db.AUTO_UPs.InsertOnSubmit(autoUp);
                 db.SubmitChanges();
                 lblTTUpKhoCK.ForeColor = Color.Blue;
                 lblTTUpKhoCK.Text = "Bạn đã đăng ký up bài tự động thành công!!.";
             };
            
            GridView1.DataBind();
        }
    }
    protected void btnUpBaiTheoChuKi_Click(object sender, EventArgs e)
    {
        int Ngay = 0, Thang = 0, Nam = 0, soLanUp;
        if (txtNgayBatDauTheoChuKi.Text == "" || txtSoLanUp.Text == "" || txtChuKi.Text == "")
        {
            lblTTUpCK.ForeColor = Color.Red;
            lblTTUpCK.Text = "Bạn vui lòng nhập đầy đủ thông tin.";
        }
        else
        {
            DateTime thoiGianUp = DateTime.Parse(txtNgayBatDauTheoChuKi.Text);
            Ngay = thoiGianUp.Day;
            Thang = thoiGianUp.Month;
            Nam = thoiGianUp.Year;
            soLanUp = int.Parse(txtSoLanUp.Text);
        }

        string sTenDangNhap = Session["TenDangNhap"].ToString();

        if (sTenDangNhap != null)
        {
            LinQ_RaoVatDataContext db = new LinQ_RaoVatDataContext();
            NGUOI_DUNG nguoiDung = db.NGUOI_DUNGs.Single(p => p.TenDangNhap == sTenDangNhap);
            soLanUp = int.Parse(txtSoLanUp.Text);
            if (nguoiDung.DiemVIP < 5 * soLanUp)
            {
                lblTTUpCK.ForeColor = Color.Red;
                lblTTUpCK.Text = "Bạn không đủ tiển để đăng ký up bài tự động.";
            }
            else
            {
                for (int i = 0; i < soLanUp; i++)
                {
                    AUTO_UP autoUp = new AUTO_UP();
                    autoUp.MaTinRaoVat = int.Parse(Request.QueryString["id"]);
                    autoUp.DaUp = false;
                    DateTime thoiGianUp = new DateTime(Nam, Thang, Ngay, int.Parse(ddlGioBatDauUpChuKy.Text), 0 + i * int.Parse(txtChuKi.Text), 0);

                    TimeSpan span = DateTime.Now.Subtract(thoiGianUp);

                    if(span.TotalMilliseconds > 0)
                    {
                        lblTTUpKhoCK.ForeColor = Color.Blue;
                        lblTTUpCK.Text = "Bạn phải đăng ký thời gian up nhỏ hơn giờ hiện tại!!.";
                        
                    }
                    else
                    {
                        autoUp.ThoiGianUp = thoiGianUp;
                        db.AUTO_UPs.InsertOnSubmit(autoUp);
                        db.SubmitChanges();

                    }
                    
                }
                lblTTUpCK.ForeColor = Color.Blue;
                lblTTUpCK.Text = "Bạn đã đăng ký up bài tự động thành công!!.";
                GridView1.DataBind();
            }
        }
      
    }
}


